﻿using SqlSugar;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace WomanMotion.WebApi.Infrastructure.DataBaseCommon
{
    /// <summary>
    /// 通用单个查询参数
    /// </summary>
    public class QueryParameter
    {
        /// <summary>
        /// 字段名 ConditionalType是字段的Where条件 (Equal=0 相等) (Like=1 模糊查询) (GreaterThan=2 大于) (GreaterThanOrEqual=3 大于等于) ( LessThan=4 小于)(LessThanOrEqual=5 小于等于)(In=6 In操作)(NotIn=7 Not in操作)(LikeLeft=8  左模糊)(LikeRight=9  右模糊)
        /// </summary>
        public string? FieldName { get; set; }
        /// <summary>
        /// 字段值  ConditionalType是字段的Where条件 (NoEqual=10 不等于)(IsNullOrEmpty=11 是null或者'')(IsNot=12 情况1 value不等于null 字段 !=x 情况2 value等于null 字段 is not null)(NoLike=13 模糊查询取反)(EqualNull=14 情况1 value不等于null 字段= x 情况2 value等于null 字段 is null)(InLike=15 正确格式  X,Y,Z  错误格式 'X','Y','z' 生在的Sql：( id like '%X%' or id like '%Y%' or id like '%Z%'))
        /// </summary>
        public string? FieldValue { get; set; }
        /// <summary>
        /// 后端c#的数据类型  常见的int long string
        /// </summary>
        public string? CSharpTypeName { get; set; }
        /// <summary>
        /// 字段的Where条件 (Equal=0 相等) (Like=1 模糊查询) (GreaterThan=2 大于) (GreaterThanOrEqual=3 大于等于) ( LessThan=4 小于) (LessThanOrEqual=5 小于等于)(In=6 In操作)(NotIn=7 Not in操作)(LikeLeft=8  左模糊)(LikeRight=9  右模糊)(NoEqual=10 不等于)(IsNullOrEmpty=11 是null或者'')(IsNot=12  情况1   value不等于null  字段<> x 情况2   value等于null  字段 is not null)(NoLike=13 模糊查询取反)(EqualNull=14 情况1   value不等于null 字段= x 情况2   value等于null  字段 is null)(InLike=15 正确格式   X,Y,Z  错误格式   'X','Y','z' 生在的Sql ：   ( id like '%X%' or id like '%Y%' or id like '%Z%'))
        /// </summary>
        public ConditionalType ConditionalType
        {
            get; set;
        }
    }
}
